home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Atari Mega Archive 1
/
Atari Mega Archive - Volume 1.iso
/
gnu
/
include
/
incl98.zoo
/
stdlib.h
< prev
next >
Wrap
C/C++ Source or Header
|
1994-02-22
|
4KB
|
137 lines
/*
* stdlib.h
* ansi draft sec 4.10
*/
#ifndef _STDLIB_H
#define _STDLIB_H
#ifndef _COMPILER_H
#include <compiler.h>
#endif
#ifdef __cplusplus
extern "C" {
#endif
#ifndef _SIZE_T
#define _SIZE_T __SIZE_TYPEDEF__
typedef _SIZE_T size_t;
#endif
#ifndef _WCHAR_T
#define _WCHAR_T __WCHAR_TYPEDEF__
typedef _WCHAR_T wchar_t;
#endif
#ifndef NULL
#define NULL __NULL
#endif
#ifdef __MSHORT__
#define RAND_MAX (0x7FFF) /* maximum value from rand() */
#else
#define RAND_MAX (0x7FFFFFFFL) /* maximum value from rand() */
#endif
#define MB_CUR_MAX 1 /* max. length of multibyte character
in current locale */
#ifndef EXIT_FAILURE
#define EXIT_FAILURE (1)
#define EXIT_SUCCESS (0)
#endif
typedef struct {
int quot; /* quotient */
int rem; /* remainder */
} div_t;
typedef struct {
long quot; /* quotient */
long rem; /* remainder */
} ldiv_t;
__EXTERN double atof __PROTO((const char *s));
__EXTERN int atoi __PROTO((const char *str));
__EXTERN long atol __PROTO((const char *str));
__EXTERN long int strtol __PROTO((const char *nptr, char **endptr, int base));
__EXTERN unsigned long int strtoul __PROTO((const char *nptr, char **endptr, int base));
__EXTERN double strtod __PROTO((const char *s, char **endptr)); /* sigh! */
__EXTERN void srand __PROTO((unsigned int seed));
__EXTERN int rand __PROTO((void));
__EXTERN void *malloc __PROTO((size_t n));
__EXTERN void free __PROTO((void *param));
__EXTERN void *realloc __PROTO((void *_r, size_t n));
__EXTERN void *calloc __PROTO((size_t n, size_t sz));
#ifndef __STRICT_ANSI__
# ifndef alloca
# ifndef __GNUC__
# ifndef __cplusplus
__EXTERN void *alloca __PROTO((size_t));
# else
__EXTERN void *alloca __PROTO((long unsigned int));
# endif /* __cplusplus */
# else
# define alloca(X) __builtin_alloca(X)
# endif /* __GNUC__ */
# endif /* alloca */
# ifdef atarist
__EXTERN void _malloczero __PROTO((int yes));
__EXTERN void _mallocChunkSize __PROTO((size_t siz));
# endif
#endif /* __STRICT_ANSI__ */
__EXTERN __EXITING abort __PROTO((void)) __NORETURN;
#if !(defined (__GNUG__) && __GNUG__ == 1)
/* bug in g++ 1.39.0 -- cant digest proto */
__EXTERN int atexit __PROTO((void (*)(void)));
#endif
__EXTERN __EXITING exit __PROTO((int)) __NORETURN;
__EXTERN char *getenv __PROTO((const char *tag));
__EXTERN int system __PROTO((const char *s));
__EXTERN void *bsearch __PROTO((const void *key, const void *base, size_t num, size_t size, int (*cmp )(const void *, const void *)));
__EXTERN void qsort __PROTO((void *base, size_t total_elems, size_t size, int (*cmp )(const void *, const void *)));
__EXTERN int abs __PROTO((int x));
__EXTERN long labs __PROTO((long x));
__EXTERN div_t div __PROTO((int num, int denom));
__EXTERN ldiv_t ldiv __PROTO((long num, long denom));
__EXTERN int mblen __PROTO((const char *, size_t));
__EXTERN size_t mbstowcs __PROTO((wchar_t *, const char *, size_t));
__EXTERN int mbtowc __PROTO((wchar_t *, const char *, size_t));
__EXTERN size_t wcstombs __PROTO((char *, const wchar_t *, size_t));
__EXTERN int wctomb __PROTO((char *, wchar_t));
__EXTERN wchar_t *wcscat __PROTO((wchar_t *, const wchar_t *));
__EXTERN int wcscmp __PROTO((const wchar_t *, const wchar_t *));
__EXTERN wchar_t *wcscpy __PROTO((wchar_t *, const wchar_t *));
__EXTERN size_t wcslen __PROTO((const wchar_t *));
__EXTERN wchar_t *wcsncat __PROTO((wchar_t *, const wchar_t *, size_t));
__EXTERN int wcsncmp __PROTO((const wchar_t *, const wchar_t *, size_t));
__EXTERN wchar_t *wcsncpy __PROTO((wchar_t *, const wchar_t *, size_t));
#if defined(__LATTICE__) && !defined(_NO_INLINE)
int __builtin_abs(int);
long __builtin_labs(long);
#define abs(i) __builtin_abs(i);
#define labs(l) __builtin_labs(l);
#endif
#ifdef __cplusplus
}
#endif
#endif /* _STDLIB_H */